package _4局部内部类;

public class Outter {

	int a = 5;
	
	public void foo()
	{
		int b = 10;
//		b = 20;
		
		// 局部内部类 （方法中定义类，作用范围仅仅是 方法内部)
		class Inner
		{
			int c = 20;
			
			void foo()
			{
				int d = 25;
				System.out.println("Inner.foo()");
				System.out.println(d);// 25
				System.out.println(c);// 20
				System.out.println(b);// 外部类方法中的局部变量 （这个变量必须变成final)
				System.out.println(a);// 5
			}
		}
		
		// 创建局部内部类对象
		Inner in = new Inner();
		in.foo();
		
	}
	
	void foo2()
	{
		int b = 20;
		
		class Inner
		{
			int c = 20;
			
			void foo()
			{
				int d = 25;
				System.out.println("Inner.foo()");
				System.out.println(d);// 25
				System.out.println(c);// 20
				System.out.println(b);// 外部类方法中的局部变量 （这个变量必须变成final)
				System.out.println(a);// 5
			}
		}
	}
}
